/* ========== 全局（基础样式） ========== */
body {
  font-family: "Helvetica Neue", Arial, sans-serif;
  background-color: #f8f9fa;
  color: #333;
  margin: 0;
  padding: 0;
  line-height: 1.6;
}
h1, h5 { font-weight: 600; }
a { text-decoration: none; color: inherit; }
img { max-width: 100%; display: block; }

/* 注意：这条看起来像想选中 .rounded-3 和 .shadow-sm 同时存在的元素。
   现在写法是 “.rounded-3 shadow-sm”（后者被当作标签选择器），
   仅提醒你：真正想要“两个类同时匹配”应为 .rounded-3.shadow-sm（先别改，等你愿意再动）*/
.rounded-3 shadow-sm {
  width: 100%;
  height: 70%;
}

/* ========== 卡片 Tile（多页面可复用） ========== */
.link-tile .card {
  border: 1px solid #e2e6ea;
  border-radius: 0.75rem;
  transition: transform 0.15s ease, box-shadow 0.15s ease;
}
.link-tile .card:hover {
  transform: translateY(-3px);
  box-shadow: 0 4px 12px rgba(0,0,0,.08);
}
.link-tile img {
  width: 28px;
  height: 28px;
  border-radius: 6px;
  object-fit: cover;
}

/* ========== 卡片通用（可复用） ========== */
.card-img-top {
  object-fit: cover;
  height: 160px;
  border-top-left-radius: .75rem;
  border-top-right-radius: .75rem;
}
.card-title { font-size: 1rem; font-weight: 500; }
.card-text { color: #777; }

/* ========== Section 标题（可复用） ========== */
section h5 {
  margin-bottom: 1rem;
  border-left: 4px solid #007bff;
  padding-left: .5rem;
  color: #007bff;
  font-size: 1.1rem;
}

/* ========== 页尾（全站通用） ========== */
.footer { font-size: 0.9rem; }
.footer a:hover { text-decoration: underline; }

/* ========== smartbar 悬浮窗（全站通用） ========== */
/* 如果你用 smartbar 盖在最上面且想给页面整体让位，可以启用下面这行：
   body { padding-top: 52px; }  */

/* 初始样式 */
.smartbar{
  position: fixed;
  top: 0; left: 0; right: 0;
  z-index: 2000;
  background: #0d6efd; /* 下面会被磨砂样式覆盖 */
  color: #fff;
  padding: .5rem 0;
  box-shadow: 0 4px 12px rgba(0,0,0,.1);
  transform: translateY(-100%);
  transition: transform .28s ease;
}
.smartbar.show{ transform: translateY(0); }
.smartbar .btn{ border-radius: 18px; padding: .25rem .6rem; }

/* 覆盖为磨砂半透明风格 */
.smartbar {
  background: rgba(0,0,0,0.65);
  backdrop-filter: blur(6px);
  color: #fff;
}
.smartbar .btn { border-color: #fff; color: #fff; }
.smartbar .btn:hover { background: #fff; color: #000; }

/* 让某个块在受限容器内也能全幅铺开（不影响其内部 .container 的居中） */
.full-bleed {
  width: 100vw;                                   /* 视口宽度 */
  margin-left: calc(50% - 50vw);                  /* 左侧抵消容器留白 */
  margin-right: calc(50% - 50vw);                 /* 右侧抵消容器留白 */
  max-width: 100%;
  overflow: hidden;                                /* 避免可能出现的横向滚动条 */
}

/* 让在 .container 里的某个区块“脱出版心”，铺满浏览器可视宽度 */
.u-bleed {
  position: relative;
  left: 50%;
  right: 50%;
  margin-left: -50vw;
  margin-right: -50vw;
  width: 100vw;            /* 用视口宽度实现全幅 */
  max-width: 100vw;        /* 防止被父级 max-width 限制 */
  overflow-x: hidden;      /* 避免偶发的横向滚动条 */
}

/* 可选：如果仍然遇到极少浏览器 1px 抖动，可全局兜底 */
 html, body { overflow-x: hidden; }


 /*head*/
.hero {
  background:
    radial-gradient(1200px 400px at 10% -20%, rgba(255,130,0,.15), transparent),
    radial-gradient(800px 300px at 90% 0%, rgba(0,120,255,.12), transparent);
  padding: 2.5rem 1rem;
  border-bottom: 1px solid #ddd;
}



main.container {
  margin-top: 0 !important;   /* 清掉外边距 */
  padding-top: 0 !important;  /* 清掉内边距 */
  border-top: 0 !important;   /* 防止有边框 */
}
